<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title>柠檬班的第一份测试报告</title>
    <meta name="generator" content="HTMLTestRunner 0.8.2.2"/>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
    <link href="http://libs.baidu.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="stylesheet">
    <script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
    <script src="http://libs.baidu.com/bootstrap/3.0.3/js/bootstrap.min.js"></script>
    
<style type="text/css" media="screen">
body        { font-family: Microsoft YaHei,Tahoma,arial,helvetica,sans-serif;padding: 20px; font-size: 120%; }
table       { font-size: 100%; }
/* -- heading ---------------------------------------------------------------------- */
.heading {
    margin-top: 0ex;
    margin-bottom: 1ex;
}
.heading .description {
    margin-top: 4ex;
    margin-bottom: 6ex;
}
/* -- report ------------------------------------------------------------------------ */
#total_row  { font-weight: bold; }
.passCase   { color: #5cb85c; }
.failCase   { color: #d9534f; font-weight: bold; }
.errorCase  { color: #f0ad4e; font-weight: bold; }
.hiddenRow  { display: none; }
.testcase   { margin-left: 2em; }
</style>

</head>
<body >
<script language="javascript" type="text/javascript">
output_list = Array();
/*level 调整增加只显示通过用例的分类 --Findyou
0:Summary //all hiddenRow
1:Failed  //pt hiddenRow, ft none
2:Pass    //pt none, ft hiddenRow
3:All     //pt none, ft none
*/
function showCase(level) {
    trs = document.getElementsByTagName("tr");
    for (var i = 0; i < trs.length; i++) {
        tr = trs[i];
        id = tr.id;
        if (id.substr(0,2) == 'ft') {
            if (level == 2 || level == 0 ) {
                tr.className = 'hiddenRow';
            }
            else {
                tr.className = '';
            }
        }
        if (id.substr(0,2) == 'pt') {
            if (level < 2) {
                tr.className = 'hiddenRow';
            }
            else {
                tr.className = '';
            }
        }
    }
    //加入【详细】切换文字变化 --Findyou
    detail_class=document.getElementsByClassName('detail');
	//console.log(detail_class.length)
	if (level == 3) {
		for (var i = 0; i < detail_class.length; i++){
			detail_class[i].innerHTML="收起"
		}
	}
	else{
			for (var i = 0; i < detail_class.length; i++){
			detail_class[i].innerHTML="详细"
		}
	}
}
function showClassDetail(cid, count) {
    var id_list = Array(count);
    var toHide = 1;
    for (var i = 0; i < count; i++) {
        //ID修改 点 为 下划线 -Findyou
        tid0 = 't' + cid.substr(1) + '_' + (i+1);
        tid = 'f' + tid0;
        tr = document.getElementById(tid);
        if (!tr) {
            tid = 'p' + tid0;
            tr = document.getElementById(tid);
        }
        id_list[i] = tid;
        if (tr.className) {
            toHide = 0;
        }
    }
    for (var i = 0; i < count; i++) {
        tid = id_list[i];
        //修改点击无法收起的BUG，加入【详细】切换文字变化 --Findyou
        if (toHide) {
            document.getElementById(tid).className = 'hiddenRow';
            document.getElementById(cid).innerText = "详细"
        }
        else {
            document.getElementById(tid).className = '';
            document.getElementById(cid).innerText = "收起"
        }
    }
}
function html_escape(s) {
    s = s.replace(/&/g,'&amp;');
    s = s.replace(/</g,'&lt;');
    s = s.replace(/>/g,'&gt;');
    return s;
}
</script>
<div class='heading'>
<h1 style="font-family: Microsoft YaHei">柠檬班的第一份测试报告</h1>
<p class='attribute'><strong>测试人员 : </strong> 老王</p>
<p class='attribute'><strong>开始时间 : </strong> 2020-12-01 20:01:11</p>
<p class='attribute'><strong>合计耗时 : </strong> 0:04:04.155101</p>
<p class='attribute'><strong>测试结果 : </strong> 共 17，失败 13，错误 4，通过率= 0.00%</p>

<p class='description'>联系html报告生成</p>
</div>


<p id='show_detail_line'>
<a class="btn btn-primary" href='javascript:showCase(0)'>概要{ 0.00% }</a>
<a class="btn btn-danger" href='javascript:showCase(1)'>失败{ 13 }</a>
<a class="btn btn-success" href='javascript:showCase(2)'>通过{ 0 }</a>
<a class="btn btn-info" href='javascript:showCase(3)'>所有{ 17 }</a>
</p>
<table id='result_table' class="table table-condensed table-bordered table-hover">
<colgroup>
<col align='left' />
<col align='right' />
<col align='right' />
<col align='right' />
<col align='right' />
<col align='right' />
</colgroup>
<tr id='header_row' class="text-center success" style="font-weight: bold;font-size: 16px;">
    <td>用例集/测试用例</td>
    <td>总计</td>
    <td>通过</td>
    <td>失败</td>
    <td>错误</td>
    <td>详细</td>
</tr>

<tr class='errorClass warning'>
    <td>test_01_register.TestRegister</td>
    <td class="text-center">5</td>
    <td class="text-center">0</td>
    <td class="text-center">2</td>
    <td class="text-center">3</td>
    <td class="text-center"><a href="javascript:showClassDetail('c1',5)" class="detail" id='c1'>详细</a></td>
</tr>

<tr id='ft1_1' class='none'>
    <td class='errorCase'><div class='testcase'>test_user_register_1_输入合法的电话_密码及注册名</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft1_1' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft1_1'>错误</button>
    <div id='div_ft1_1' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft1_1' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft1_1'>错误</button>
    <div id='div_ft1_1' class="collapse in" align="left">
    <pre>
    
ft1_1: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_01_register.py", line 38, in test_user_register
    new_data = HandleContext.reginster_paramization(one_case["data"])
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\scripts\handle_context.py", line 60, in reginster_paramization
    data = cls.not_existed_phone_context(data)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\scripts\handle_context.py", line 22, in not_existed_phone_context
    do_sql = HandleSql()
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\scripts\handle_mysql.py", line 12, in __init__
    self.conn = pymysql.connect(host=config_read_file.get_value("sql", "host"),
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\__init__.py", line 94, in Connect
    return Connection(*args, **kwargs)
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 325, in __init__
    self.connect()
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 598, in connect
    self._get_server_information()
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 975, in _get_server_information
    packet = self._read_packet()
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 657, in _read_packet
    packet_header = self._read_bytes(4)
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 706, in _read_bytes
    raise err.OperationalError(
pymysql.err.OperationalError: (2013, 'Lost connection to MySQL server during query')


    </pre>
    </div>
    </td>
</tr>

<tr id='ft1_2' class='none'>
    <td class='errorCase'><div class='testcase'>test_user_register_2_输入的注册名为空</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft1_2' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft1_2'>错误</button>
    <div id='div_ft1_2' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft1_2' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft1_2'>错误</button>
    <div id='div_ft1_2' class="collapse in" align="left">
    <pre>
    
ft1_2: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_01_register.py", line 38, in test_user_register
    new_data = HandleContext.reginster_paramization(one_case["data"])
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\scripts\handle_context.py", line 60, in reginster_paramization
    data = cls.not_existed_phone_context(data)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\scripts\handle_context.py", line 22, in not_existed_phone_context
    do_sql = HandleSql()
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\scripts\handle_mysql.py", line 12, in __init__
    self.conn = pymysql.connect(host=config_read_file.get_value("sql", "host"),
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\__init__.py", line 94, in Connect
    return Connection(*args, **kwargs)
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 325, in __init__
    self.connect()
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 598, in connect
    self._get_server_information()
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 975, in _get_server_information
    packet = self._read_packet()
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 657, in _read_packet
    packet_header = self._read_bytes(4)
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 706, in _read_bytes
    raise err.OperationalError(
pymysql.err.OperationalError: (2013, 'Lost connection to MySQL server during query')


    </pre>
    </div>
    </td>
</tr>

<tr id='ft1_3' class='none'>
    <td class='failCase'><div class='testcase'>test_user_register_3_输入的手机号为空</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft1_3' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft1_3'>失败</button>
    <div id='div_ft1_3' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft1_3' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft1_3'>失败</button>
    <div id='div_ft1_3' class="collapse in" align="left">
    <pre>
    
ft1_3: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_01_register.py", line 48, in test_user_register
    raise err
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_01_register.py", line 42, in test_user_register
    self.assertEqual(one_case["expected"], register.text, msg=one_case["title"])
AssertionError: '{"status":0,"code":"20103","data":null,"msg":"手机号不能为空"}' != '&lt;!DOCTYPE html&gt;\r\n&lt;html lang="zh-CN"&gt;\r\[6715 chars]tml&gt;'
Diff is 6519 characters long. Set self.maxDiff to None to see it. : 输入的手机号为空


    </pre>
    </div>
    </td>
</tr>

<tr id='ft1_4' class='none'>
    <td class='errorCase'><div class='testcase'>test_user_register_4_输入的密码为空</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft1_4' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft1_4'>错误</button>
    <div id='div_ft1_4' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft1_4' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft1_4'>错误</button>
    <div id='div_ft1_4' class="collapse in" align="left">
    <pre>
    
ft1_4: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_01_register.py", line 38, in test_user_register
    new_data = HandleContext.reginster_paramization(one_case["data"])
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\scripts\handle_context.py", line 60, in reginster_paramization
    data = cls.not_existed_phone_context(data)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\scripts\handle_context.py", line 22, in not_existed_phone_context
    do_sql = HandleSql()
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\scripts\handle_mysql.py", line 12, in __init__
    self.conn = pymysql.connect(host=config_read_file.get_value("sql", "host"),
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\__init__.py", line 94, in Connect
    return Connection(*args, **kwargs)
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 325, in __init__
    self.connect()
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 598, in connect
    self._get_server_information()
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 975, in _get_server_information
    packet = self._read_packet()
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 657, in _read_packet
    packet_header = self._read_bytes(4)
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 706, in _read_bytes
    raise err.OperationalError(
pymysql.err.OperationalError: (2013, 'Lost connection to MySQL server during query')


    </pre>
    </div>
    </td>
</tr>

<tr id='ft1_5' class='none'>
    <td class='failCase'><div class='testcase'>test_user_register_5_输入已经注册的手机号</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft1_5' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft1_5'>失败</button>
    <div id='div_ft1_5' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft1_5' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft1_5'>失败</button>
    <div id='div_ft1_5' class="collapse in" align="left">
    <pre>
    
ft1_5: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_01_register.py", line 48, in test_user_register
    raise err
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_01_register.py", line 42, in test_user_register
    self.assertEqual(one_case["expected"], register.text, msg=one_case["title"])
AssertionError: '{"status":0,"code":"20110","data":null,"msg":"手机号码已被注册"}' != '&lt;!DOCTYPE html&gt;\r\n&lt;html lang="zh-CN"&gt;\r\[6715 chars]tml&gt;'
Diff is 6520 characters long. Set self.maxDiff to None to see it. : 输入已经注册的手机号


    </pre>
    </div>
    </td>
</tr>

<tr class='failClass warning'>
    <td>test_02_login.TestLogin</td>
    <td class="text-center">3</td>
    <td class="text-center">0</td>
    <td class="text-center">3</td>
    <td class="text-center">0</td>
    <td class="text-center"><a href="javascript:showClassDetail('c2',3)" class="detail" id='c2'>详细</a></td>
</tr>

<tr id='ft2_1' class='none'>
    <td class='failCase'><div class='testcase'>test_user_login_1_输入合法的电话_密码登录</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft2_1' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft2_1'>失败</button>
    <div id='div_ft2_1' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft2_1' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft2_1'>失败</button>
    <div id='div_ft2_1' class="collapse in" align="left">
    <pre>
    
ft2_1: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_02_login.py", line 49, in test_user_login
    raise err
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_02_login.py", line 43, in test_user_login
    self.assertEqual(one_case["expected"], login.text, msg=one_case["title"])
AssertionError: '{"status":1,"code":"10001","data":null,"msg":"登录成功"}' != '&lt;!DOCTYPE html&gt;\r\n&lt;html lang="zh-CN"&gt;\r\[6711 chars]tml&gt;'
Diff is 6512 characters long. Set self.maxDiff to None to see it. : 输入合法的电话、密码登录


    </pre>
    </div>
    </td>
</tr>

<tr id='ft2_2' class='none'>
    <td class='failCase'><div class='testcase'>test_user_login_2_输入的电话为空</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft2_2' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft2_2'>失败</button>
    <div id='div_ft2_2' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft2_2' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft2_2'>失败</button>
    <div id='div_ft2_2' class="collapse in" align="left">
    <pre>
    
ft2_2: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_02_login.py", line 49, in test_user_login
    raise err
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_02_login.py", line 43, in test_user_login
    self.assertEqual(one_case["expected"], login.text, msg=one_case["title"])
AssertionError: '{"status":0,"code":"20103","data":null,"msg":"手机号不能为空"}' != '&lt;!DOCTYPE html&gt;\r\n&lt;html lang="zh-CN"&gt;\r\[6711 chars]tml&gt;'
Diff is 6515 characters long. Set self.maxDiff to None to see it. : 输入的电话为空


    </pre>
    </div>
    </td>
</tr>

<tr id='ft2_3' class='none'>
    <td class='failCase'><div class='testcase'>test_user_login_3_输入的密码为空</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft2_3' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft2_3'>失败</button>
    <div id='div_ft2_3' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft2_3' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft2_3'>失败</button>
    <div id='div_ft2_3' class="collapse in" align="left">
    <pre>
    
ft2_3: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_02_login.py", line 49, in test_user_login
    raise err
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_02_login.py", line 43, in test_user_login
    self.assertEqual(one_case["expected"], login.text, msg=one_case["title"])
AssertionError: '{"status":0,"code":"20103","data":null,"msg":"密码不能为空"}' != '&lt;!DOCTYPE html&gt;\r\n&lt;html lang="zh-CN"&gt;\r\[6711 chars]tml&gt;'
Diff is 6514 characters long. Set self.maxDiff to None to see it. : 输入的密码为空


    </pre>
    </div>
    </td>
</tr>

<tr class='failClass warning'>
    <td>test_03_recharge.TestRecharge</td>
    <td class="text-center">4</td>
    <td class="text-center">0</td>
    <td class="text-center">4</td>
    <td class="text-center">0</td>
    <td class="text-center"><a href="javascript:showClassDetail('c3',4)" class="detail" id='c3'>详细</a></td>
</tr>

<tr id='ft3_1' class='none'>
    <td class='failCase'><div class='testcase'>test_user_login_1_输入合法的电话_密码登录</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft3_1' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft3_1'>失败</button>
    <div id='div_ft3_1' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft3_1' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft3_1'>失败</button>
    <div id='div_ft3_1' class="collapse in" align="left">
    <pre>
    
ft3_1: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_03_recharge.py", line 51, in test_user_login
    raise err
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_03_recharge.py", line 45, in test_user_login
    self.assertIn(str(one_case["expected"]), register.text, msg=one_case["title"])
AssertionError: '10001' not found in '&lt;!DOCTYPE html&gt;\r\n&lt;html lang="zh-CN"&gt;\r\n&lt;head&gt;\r\n  &lt;title&gt;前程贷官网 - 欢迎登录&lt;/title&gt;\r\n  &lt;meta charset="utf-8"&gt;\r\n      &lt;meta name="keywords" content="前程贷 前程贷官方网站 社群金融 社群P2P 社群理财 蜂群投资 蜂群理财 网贷理财 网络理财" /&gt;\r\n    &lt;meta name="description" content="社群P2P信息中介平台，P2P领域的创新平台；采用社群金融理财模式，将投资理财用户交付给具备风险识别能力和理财能力的蜂群群主打理，融汇成千上万个蜂群共同监管P2P投资风险。"&gt;  &lt;meta name="renderer" content="webkit"&gt;\r\n  &lt;meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"&gt;\r\n  &lt;meta name="baidu-site-verification" content="ZZA75oMos5" /&gt;\r\n  &lt;link rel="stylesheet" href="/Public/frontend/styles/vendor.css"&gt;\r\n  &lt;script type=\'text/javascript\' src=\'/Public/frontend/scripts/lib/jquery.min.js\'&gt;&lt;/script&gt;\r\n  \r\n  \r\n  &lt;script&gt;\r\n    var _hmt = _hmt || [];\r\n    (function() {\r\n      var hm = document.createElement("script");\r\n      hm.src = "//hm.baidu.com/hm.js?19dd11b0519f0ce499da125c4156e320";\r\n      var s = document.getElementsByTagName("script")[0];\r\n      s.parentNode.insertBefore(hm, s);\r\n    })();\r\n  &lt;/script&gt;\r\n&lt;/head&gt;\n  &lt;body&gt;\n    &lt;div class="login-head"&gt;\n      &lt;div class="login-center"&gt;\n        &lt;div class="login-head-logo clearfix"&gt;\n          &lt;!--&lt;a href="/index/index.html" title="前程贷" class="logo left"&gt;&lt;/a&gt;--&gt;\n          &lt;span class="left"&gt;&lt;a href="/Index/index.html" title="前程贷"&gt;&lt;img src="/Public/frontend/images/logo.png" alt="前程贷" height="52px" width="244px"&gt;&lt;/a&gt;&lt;/span&gt;\n          &lt;div&gt;登录&lt;/div&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n    &lt;div class="login-center login-body"&gt;&lt;a href="javascript:;" style="background: url(\'/Public/frontend/images/login-banner.png\') no-repeat;" class="login-banner"&gt;&lt;/a&gt;\n      &lt;div class="login-form"&gt;\n        &lt;h1&gt;登录前程贷&lt;/h1&gt;\n        &lt;form name="login-form" action="/Frontend/Index/login" method="post"&gt;\n          \n          &lt;div class="form-group"&gt;\n            &lt;input type="text" name="phone" placeholder="手机号" datatype="m" nullmsg="请输入手机号" errormsg="请输入正确的手机号" class="form-control username" value=""&gt;\n          &lt;/div&gt;\n          &lt;div class="form-group"&gt;\n            &lt;input type="password" name="password" placeholder="密码" datatype="*" nullmsg="请输入密码" class="form-control"&gt;\n          &lt;/div&gt;\n          &lt;div style="display:none" class="form-group clearfix verify-form-group"&gt;\n            &lt;input name="vcode" datatype="*4-4" placeholder="图片验证码" nullmsg="请输入验证码" errormsg="请填写4位验证码" class="left verify-input form-control"&gt;&lt;img width="130px" height="43px" src="/Frontend/Index/member_vcode?r=123" class="verify-img"&gt;\n          &lt;/div&gt;\n          &lt;div class="checkbox"&gt;\n            &lt;label&gt;\n              &lt;input name="remember_me" type="checkbox" class="mr-10 rememberme" value="1" checked&gt;记住手机号\n            &lt;/label&gt;\n            &lt;label class="right"&gt;&lt;a href="/Index/find_pwd.html"&gt;忘记密码?&lt;/a&gt;&lt;/label&gt;\n          &lt;/div&gt;\n          &lt;div class="form-group mt-20"&gt;\n            &lt;input type="hidden" name="notify_url" value="L2Z1dHVyZWxvYW4vbXZjL2FwaS9tZW1iZXIvbG9naW4="&gt;\n            &lt;button type="button" class="btn btn-special"&gt;登录&lt;/button&gt;\n                      &lt;/div&gt;\n          &lt;div class="text-center"&gt;还不是前程贷会员?&lt;a href="/Index/reg.html"&gt;&amp;nbsp;免费注册&lt;/a&gt;&lt;/div&gt;\n        &lt;/form&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n    &lt;div class="login-center login-footer text-center"&gt;&lt;span&gt;\n    &lt;a href="#"&gt;安全保障&lt;/a&gt;&lt;/span&gt;&lt;span&gt;\n    &lt;a href="#"&gt;关于我们&lt;/a&gt;&lt;/span&gt;&lt;span&gt;\n    &lt;a href="#"&gt;联系我们&lt;/a&gt;&lt;/span&gt;&lt;span class="no-border"&gt;\n    &lt;a href="/Announce/announce_list.html"&gt;平台公告&lt;/a&gt;&lt;/span&gt;\n\n      &lt;div&gt;版权所有©深圳市前程互联网金融有限公司 粤ICP备88888888号&lt;/div&gt;\n    &lt;/div&gt;\n    &lt;script src="/Public/frontend/scripts/lib/vendor.js"&gt;&lt;/script&gt;\n&lt;script&gt;\n  seajs.config({\n    base: \'/Public/frontend/scripts\',\n    alias: {\n      \'backbone\': \'lib/backbone\',\n      \'underscore\': \'lib/underscore\',\n      \'handlebars\': \'lib/handlebars\'\n    },\n    paths: {\n      \'controllers\': \'app/controllers\',\n      \'plugins\': \'app/plugins\',\n      \'services\': \'app/services\',\n      \'models\': \'app/models\',\n      \'views\': \'app/views\',\n      \'config\': \'app/config\',\n      \'tpl\':\'app/tpl\'\n    }\n  });\n  _.templateSettings = {\n    evaluate: /\\{{(.+?)}\\}/g,\n    interpolate: /\\{{=(.+?)}\\}/g,\n    escape: /\\{{-(.+?)}\\}/g,\n  };\n  seajs.use(\'controllers/common\', function(){\n      });\n  (function (doc, win) {\n    var u = navigator.userAgent;\n    var mobile = !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/\\(i[^;]+;( U;)? CPU.+Mac OS X/) || (u.indexOf(\'Android\') &gt; -1);\n    var docEl = doc.documentElement,\n        resizeEvt = \'orientationchange\' in window ? \'orientationchange\' : \'resize\',\n        recalc = function () {\n          var clientWidth = docEl.clientWidth;\n          if (!clientWidth) return;\n          docEl.style.fontSize = 20 * (clientWidth / 320) + \'px\';\n        };\n    if(!mobile) return;\n\n    $(\'html\').css(\'width\',\'80rem\');\n    if (!doc.addEventListener) return;\n    win.addEventListener(resizeEvt, recalc, false);\n    doc.addEventListener(\'DOMContentLoaded\', recalc, false);\n  })(document, window);\n  seajs.use(\'plugins/calculator\');\n\n  $(function(){\n    $(".ios_code_icon").hover(function(){\n      $(".ios_code_box").show();\n    },function(){\n      $(".ios_code_box").hide();\n    })\n    $(".and_code_icon").hover(function(){\n      $(".and_code_box").show();\n    },function(){\n      $(".and_code_box").hide();\n    })\n  });\n\n  $(\'.develop\').click(function(){\n    alert(\'功能开发中,敬请期待!\');\n  });\n&lt;/script&gt;\n\n    &lt;script&gt;\n      $(function() {\n        seajs.use([\'lib/layer/layer\']);\n        seajs.use([\'config/config\',\'lib/validform\'], function (config) {\n          $(\'form\').Validform({\n            btnSubmit: \'.btn-special\',\n            dragonfly: true,\n            ignoreHidden: true,\n            ajaxPost: true,\n            tiptype: config.VALIDFORM_TIPTYPE,\n            callback: function (res) {\n              switch (res.state) {\n                //登录失败\n                case 0:\n                  layer.msg(res.msg, {\n                    offset: \'100px\'\n                  });\n                  ($(\'.verify-img\').is(\':visible\') &amp;&amp; $(\'body\').trigger(\'verifyImg.click\'));\n                  break;\n                //登录成功\n                case 1:\n                    console.log(res);\n                  $(\'.btn-special\').append(res.synlogin);\n                  location.href = res.redirect_url;\n                  break;\n                //失败次数超过三次\n                case 3:\n                  layer.msg(res.msg, {\n                    offset: \'100px\'\n                  });\n                  $(\'body\').trigger(\'verifyImg.show\').trigger(\'verifyImg.click\');\n              }\n            }\n          });\n        });\n      });\n    &lt;/script&gt;\n  &lt;/body&gt;\n&lt;/html&gt;' : 输入合法的电话、密码登录


    </pre>
    </div>
    </td>
</tr>

<tr id='ft3_2' class='none'>
    <td class='failCase'><div class='testcase'>test_user_login_2_输入合法的电话_及充值数量</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft3_2' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft3_2'>失败</button>
    <div id='div_ft3_2' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft3_2' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft3_2'>失败</button>
    <div id='div_ft3_2' class="collapse in" align="left">
    <pre>
    
ft3_2: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_03_recharge.py", line 51, in test_user_login
    raise err
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_03_recharge.py", line 45, in test_user_login
    self.assertIn(str(one_case["expected"]), register.text, msg=one_case["title"])
AssertionError: '10001' not found in '&lt;!DOCTYPE html&gt;\r\n&lt;html lang="zh-CN"&gt;\r\n&lt;head&gt;\r\n  &lt;title&gt;前程贷官网 - 欢迎登录&lt;/title&gt;\r\n  &lt;meta charset="utf-8"&gt;\r\n      &lt;meta name="keywords" content="前程贷 前程贷官方网站 社群金融 社群P2P 社群理财 蜂群投资 蜂群理财 网贷理财 网络理财" /&gt;\r\n    &lt;meta name="description" content="社群P2P信息中介平台，P2P领域的创新平台；采用社群金融理财模式，将投资理财用户交付给具备风险识别能力和理财能力的蜂群群主打理，融汇成千上万个蜂群共同监管P2P投资风险。"&gt;  &lt;meta name="renderer" content="webkit"&gt;\r\n  &lt;meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"&gt;\r\n  &lt;meta name="baidu-site-verification" content="ZZA75oMos5" /&gt;\r\n  &lt;link rel="stylesheet" href="/Public/frontend/styles/vendor.css"&gt;\r\n  &lt;script type=\'text/javascript\' src=\'/Public/frontend/scripts/lib/jquery.min.js\'&gt;&lt;/script&gt;\r\n  \r\n  \r\n  &lt;script&gt;\r\n    var _hmt = _hmt || [];\r\n    (function() {\r\n      var hm = document.createElement("script");\r\n      hm.src = "//hm.baidu.com/hm.js?19dd11b0519f0ce499da125c4156e320";\r\n      var s = document.getElementsByTagName("script")[0];\r\n      s.parentNode.insertBefore(hm, s);\r\n    })();\r\n  &lt;/script&gt;\r\n&lt;/head&gt;\n  &lt;body&gt;\n    &lt;div class="login-head"&gt;\n      &lt;div class="login-center"&gt;\n        &lt;div class="login-head-logo clearfix"&gt;\n          &lt;!--&lt;a href="/index/index.html" title="前程贷" class="logo left"&gt;&lt;/a&gt;--&gt;\n          &lt;span class="left"&gt;&lt;a href="/Index/index.html" title="前程贷"&gt;&lt;img src="/Public/frontend/images/logo.png" alt="前程贷" height="52px" width="244px"&gt;&lt;/a&gt;&lt;/span&gt;\n          &lt;div&gt;登录&lt;/div&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n    &lt;div class="login-center login-body"&gt;&lt;a href="javascript:;" style="background: url(\'/Public/frontend/images/login-banner.png\') no-repeat;" class="login-banner"&gt;&lt;/a&gt;\n      &lt;div class="login-form"&gt;\n        &lt;h1&gt;登录前程贷&lt;/h1&gt;\n        &lt;form name="login-form" action="/Frontend/Index/login" method="post"&gt;\n          \n          &lt;div class="form-group"&gt;\n            &lt;input type="text" name="phone" placeholder="手机号" datatype="m" nullmsg="请输入手机号" errormsg="请输入正确的手机号" class="form-control username" value=""&gt;\n          &lt;/div&gt;\n          &lt;div class="form-group"&gt;\n            &lt;input type="password" name="password" placeholder="密码" datatype="*" nullmsg="请输入密码" class="form-control"&gt;\n          &lt;/div&gt;\n          &lt;div style="display:none" class="form-group clearfix verify-form-group"&gt;\n            &lt;input name="vcode" datatype="*4-4" placeholder="图片验证码" nullmsg="请输入验证码" errormsg="请填写4位验证码" class="left verify-input form-control"&gt;&lt;img width="130px" height="43px" src="/Frontend/Index/member_vcode?r=123" class="verify-img"&gt;\n          &lt;/div&gt;\n          &lt;div class="checkbox"&gt;\n            &lt;label&gt;\n              &lt;input name="remember_me" type="checkbox" class="mr-10 rememberme" value="1" checked&gt;记住手机号\n            &lt;/label&gt;\n            &lt;label class="right"&gt;&lt;a href="/Index/find_pwd.html"&gt;忘记密码?&lt;/a&gt;&lt;/label&gt;\n          &lt;/div&gt;\n          &lt;div class="form-group mt-20"&gt;\n            &lt;input type="hidden" name="notify_url" value="L2Z1dHVyZWxvYW4vbXZjL2FwaS9tZW1iZXIvcmVjaGFyZ2U="&gt;\n            &lt;button type="button" class="btn btn-special"&gt;登录&lt;/button&gt;\n                      &lt;/div&gt;\n          &lt;div class="text-center"&gt;还不是前程贷会员?&lt;a href="/Index/reg.html"&gt;&amp;nbsp;免费注册&lt;/a&gt;&lt;/div&gt;\n        &lt;/form&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n    &lt;div class="login-center login-footer text-center"&gt;&lt;span&gt;\n    &lt;a href="#"&gt;安全保障&lt;/a&gt;&lt;/span&gt;&lt;span&gt;\n    &lt;a href="#"&gt;关于我们&lt;/a&gt;&lt;/span&gt;&lt;span&gt;\n    &lt;a href="#"&gt;联系我们&lt;/a&gt;&lt;/span&gt;&lt;span class="no-border"&gt;\n    &lt;a href="/Announce/announce_list.html"&gt;平台公告&lt;/a&gt;&lt;/span&gt;\n\n      &lt;div&gt;版权所有©深圳市前程互联网金融有限公司 粤ICP备88888888号&lt;/div&gt;\n    &lt;/div&gt;\n    &lt;script src="/Public/frontend/scripts/lib/vendor.js"&gt;&lt;/script&gt;\n&lt;script&gt;\n  seajs.config({\n    base: \'/Public/frontend/scripts\',\n    alias: {\n      \'backbone\': \'lib/backbone\',\n      \'underscore\': \'lib/underscore\',\n      \'handlebars\': \'lib/handlebars\'\n    },\n    paths: {\n      \'controllers\': \'app/controllers\',\n      \'plugins\': \'app/plugins\',\n      \'services\': \'app/services\',\n      \'models\': \'app/models\',\n      \'views\': \'app/views\',\n      \'config\': \'app/config\',\n      \'tpl\':\'app/tpl\'\n    }\n  });\n  _.templateSettings = {\n    evaluate: /\\{{(.+?)}\\}/g,\n    interpolate: /\\{{=(.+?)}\\}/g,\n    escape: /\\{{-(.+?)}\\}/g,\n  };\n  seajs.use(\'controllers/common\', function(){\n      });\n  (function (doc, win) {\n    var u = navigator.userAgent;\n    var mobile = !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/\\(i[^;]+;( U;)? CPU.+Mac OS X/) || (u.indexOf(\'Android\') &gt; -1);\n    var docEl = doc.documentElement,\n        resizeEvt = \'orientationchange\' in window ? \'orientationchange\' : \'resize\',\n        recalc = function () {\n          var clientWidth = docEl.clientWidth;\n          if (!clientWidth) return;\n          docEl.style.fontSize = 20 * (clientWidth / 320) + \'px\';\n        };\n    if(!mobile) return;\n\n    $(\'html\').css(\'width\',\'80rem\');\n    if (!doc.addEventListener) return;\n    win.addEventListener(resizeEvt, recalc, false);\n    doc.addEventListener(\'DOMContentLoaded\', recalc, false);\n  })(document, window);\n  seajs.use(\'plugins/calculator\');\n\n  $(function(){\n    $(".ios_code_icon").hover(function(){\n      $(".ios_code_box").show();\n    },function(){\n      $(".ios_code_box").hide();\n    })\n    $(".and_code_icon").hover(function(){\n      $(".and_code_box").show();\n    },function(){\n      $(".and_code_box").hide();\n    })\n  });\n\n  $(\'.develop\').click(function(){\n    alert(\'功能开发中,敬请期待!\');\n  });\n&lt;/script&gt;\n\n    &lt;script&gt;\n      $(function() {\n        seajs.use([\'lib/layer/layer\']);\n        seajs.use([\'config/config\',\'lib/validform\'], function (config) {\n          $(\'form\').Validform({\n            btnSubmit: \'.btn-special\',\n            dragonfly: true,\n            ignoreHidden: true,\n            ajaxPost: true,\n            tiptype: config.VALIDFORM_TIPTYPE,\n            callback: function (res) {\n              switch (res.state) {\n                //登录失败\n                case 0:\n                  layer.msg(res.msg, {\n                    offset: \'100px\'\n                  });\n                  ($(\'.verify-img\').is(\':visible\') &amp;&amp; $(\'body\').trigger(\'verifyImg.click\'));\n                  break;\n                //登录成功\n                case 1:\n                    console.log(res);\n                  $(\'.btn-special\').append(res.synlogin);\n                  location.href = res.redirect_url;\n                  break;\n                //失败次数超过三次\n                case 3:\n                  layer.msg(res.msg, {\n                    offset: \'100px\'\n                  });\n                  $(\'body\').trigger(\'verifyImg.show\').trigger(\'verifyImg.click\');\n              }\n            }\n          });\n        });\n      });\n    &lt;/script&gt;\n  &lt;/body&gt;\n&lt;/html&gt;' : 输入合法的电话、及充值数量


    </pre>
    </div>
    </td>
</tr>

<tr id='ft3_3' class='none'>
    <td class='failCase'><div class='testcase'>test_user_login_3_输入的电话为空</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft3_3' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft3_3'>失败</button>
    <div id='div_ft3_3' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft3_3' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft3_3'>失败</button>
    <div id='div_ft3_3' class="collapse in" align="left">
    <pre>
    
ft3_3: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_03_recharge.py", line 51, in test_user_login
    raise err
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_03_recharge.py", line 45, in test_user_login
    self.assertIn(str(one_case["expected"]), register.text, msg=one_case["title"])
AssertionError: '20103' not found in '&lt;!DOCTYPE html&gt;\r\n&lt;html lang="zh-CN"&gt;\r\n&lt;head&gt;\r\n  &lt;title&gt;前程贷官网 - 欢迎登录&lt;/title&gt;\r\n  &lt;meta charset="utf-8"&gt;\r\n      &lt;meta name="keywords" content="前程贷 前程贷官方网站 社群金融 社群P2P 社群理财 蜂群投资 蜂群理财 网贷理财 网络理财" /&gt;\r\n    &lt;meta name="description" content="社群P2P信息中介平台，P2P领域的创新平台；采用社群金融理财模式，将投资理财用户交付给具备风险识别能力和理财能力的蜂群群主打理，融汇成千上万个蜂群共同监管P2P投资风险。"&gt;  &lt;meta name="renderer" content="webkit"&gt;\r\n  &lt;meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"&gt;\r\n  &lt;meta name="baidu-site-verification" content="ZZA75oMos5" /&gt;\r\n  &lt;link rel="stylesheet" href="/Public/frontend/styles/vendor.css"&gt;\r\n  &lt;script type=\'text/javascript\' src=\'/Public/frontend/scripts/lib/jquery.min.js\'&gt;&lt;/script&gt;\r\n  \r\n  \r\n  &lt;script&gt;\r\n    var _hmt = _hmt || [];\r\n    (function() {\r\n      var hm = document.createElement("script");\r\n      hm.src = "//hm.baidu.com/hm.js?19dd11b0519f0ce499da125c4156e320";\r\n      var s = document.getElementsByTagName("script")[0];\r\n      s.parentNode.insertBefore(hm, s);\r\n    })();\r\n  &lt;/script&gt;\r\n&lt;/head&gt;\n  &lt;body&gt;\n    &lt;div class="login-head"&gt;\n      &lt;div class="login-center"&gt;\n        &lt;div class="login-head-logo clearfix"&gt;\n          &lt;!--&lt;a href="/index/index.html" title="前程贷" class="logo left"&gt;&lt;/a&gt;--&gt;\n          &lt;span class="left"&gt;&lt;a href="/Index/index.html" title="前程贷"&gt;&lt;img src="/Public/frontend/images/logo.png" alt="前程贷" height="52px" width="244px"&gt;&lt;/a&gt;&lt;/span&gt;\n          &lt;div&gt;登录&lt;/div&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n    &lt;div class="login-center login-body"&gt;&lt;a href="javascript:;" style="background: url(\'/Public/frontend/images/login-banner.png\') no-repeat;" class="login-banner"&gt;&lt;/a&gt;\n      &lt;div class="login-form"&gt;\n        &lt;h1&gt;登录前程贷&lt;/h1&gt;\n        &lt;form name="login-form" action="/Frontend/Index/login" method="post"&gt;\n          \n          &lt;div class="form-group"&gt;\n            &lt;input type="text" name="phone" placeholder="手机号" datatype="m" nullmsg="请输入手机号" errormsg="请输入正确的手机号" class="form-control username" value=""&gt;\n          &lt;/div&gt;\n          &lt;div class="form-group"&gt;\n            &lt;input type="password" name="password" placeholder="密码" datatype="*" nullmsg="请输入密码" class="form-control"&gt;\n          &lt;/div&gt;\n          &lt;div style="display:none" class="form-group clearfix verify-form-group"&gt;\n            &lt;input name="vcode" datatype="*4-4" placeholder="图片验证码" nullmsg="请输入验证码" errormsg="请填写4位验证码" class="left verify-input form-control"&gt;&lt;img width="130px" height="43px" src="/Frontend/Index/member_vcode?r=123" class="verify-img"&gt;\n          &lt;/div&gt;\n          &lt;div class="checkbox"&gt;\n            &lt;label&gt;\n              &lt;input name="remember_me" type="checkbox" class="mr-10 rememberme" value="1" checked&gt;记住手机号\n            &lt;/label&gt;\n            &lt;label class="right"&gt;&lt;a href="/Index/find_pwd.html"&gt;忘记密码?&lt;/a&gt;&lt;/label&gt;\n          &lt;/div&gt;\n          &lt;div class="form-group mt-20"&gt;\n            &lt;input type="hidden" name="notify_url" value="L2Z1dHVyZWxvYW4vbXZjL2FwaS9tZW1iZXIvcmVjaGFyZ2U="&gt;\n            &lt;button type="button" class="btn btn-special"&gt;登录&lt;/button&gt;\n                      &lt;/div&gt;\n          &lt;div class="text-center"&gt;还不是前程贷会员?&lt;a href="/Index/reg.html"&gt;&amp;nbsp;免费注册&lt;/a&gt;&lt;/div&gt;\n        &lt;/form&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n    &lt;div class="login-center login-footer text-center"&gt;&lt;span&gt;\n    &lt;a href="#"&gt;安全保障&lt;/a&gt;&lt;/span&gt;&lt;span&gt;\n    &lt;a href="#"&gt;关于我们&lt;/a&gt;&lt;/span&gt;&lt;span&gt;\n    &lt;a href="#"&gt;联系我们&lt;/a&gt;&lt;/span&gt;&lt;span class="no-border"&gt;\n    &lt;a href="/Announce/announce_list.html"&gt;平台公告&lt;/a&gt;&lt;/span&gt;\n\n      &lt;div&gt;版权所有©深圳市前程互联网金融有限公司 粤ICP备88888888号&lt;/div&gt;\n    &lt;/div&gt;\n    &lt;script src="/Public/frontend/scripts/lib/vendor.js"&gt;&lt;/script&gt;\n&lt;script&gt;\n  seajs.config({\n    base: \'/Public/frontend/scripts\',\n    alias: {\n      \'backbone\': \'lib/backbone\',\n      \'underscore\': \'lib/underscore\',\n      \'handlebars\': \'lib/handlebars\'\n    },\n    paths: {\n      \'controllers\': \'app/controllers\',\n      \'plugins\': \'app/plugins\',\n      \'services\': \'app/services\',\n      \'models\': \'app/models\',\n      \'views\': \'app/views\',\n      \'config\': \'app/config\',\n      \'tpl\':\'app/tpl\'\n    }\n  });\n  _.templateSettings = {\n    evaluate: /\\{{(.+?)}\\}/g,\n    interpolate: /\\{{=(.+?)}\\}/g,\n    escape: /\\{{-(.+?)}\\}/g,\n  };\n  seajs.use(\'controllers/common\', function(){\n      });\n  (function (doc, win) {\n    var u = navigator.userAgent;\n    var mobile = !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/\\(i[^;]+;( U;)? CPU.+Mac OS X/) || (u.indexOf(\'Android\') &gt; -1);\n    var docEl = doc.documentElement,\n        resizeEvt = \'orientationchange\' in window ? \'orientationchange\' : \'resize\',\n        recalc = function () {\n          var clientWidth = docEl.clientWidth;\n          if (!clientWidth) return;\n          docEl.style.fontSize = 20 * (clientWidth / 320) + \'px\';\n        };\n    if(!mobile) return;\n\n    $(\'html\').css(\'width\',\'80rem\');\n    if (!doc.addEventListener) return;\n    win.addEventListener(resizeEvt, recalc, false);\n    doc.addEventListener(\'DOMContentLoaded\', recalc, false);\n  })(document, window);\n  seajs.use(\'plugins/calculator\');\n\n  $(function(){\n    $(".ios_code_icon").hover(function(){\n      $(".ios_code_box").show();\n    },function(){\n      $(".ios_code_box").hide();\n    })\n    $(".and_code_icon").hover(function(){\n      $(".and_code_box").show();\n    },function(){\n      $(".and_code_box").hide();\n    })\n  });\n\n  $(\'.develop\').click(function(){\n    alert(\'功能开发中,敬请期待!\');\n  });\n&lt;/script&gt;\n\n    &lt;script&gt;\n      $(function() {\n        seajs.use([\'lib/layer/layer\']);\n        seajs.use([\'config/config\',\'lib/validform\'], function (config) {\n          $(\'form\').Validform({\n            btnSubmit: \'.btn-special\',\n            dragonfly: true,\n            ignoreHidden: true,\n            ajaxPost: true,\n            tiptype: config.VALIDFORM_TIPTYPE,\n            callback: function (res) {\n              switch (res.state) {\n                //登录失败\n                case 0:\n                  layer.msg(res.msg, {\n                    offset: \'100px\'\n                  });\n                  ($(\'.verify-img\').is(\':visible\') &amp;&amp; $(\'body\').trigger(\'verifyImg.click\'));\n                  break;\n                //登录成功\n                case 1:\n                    console.log(res);\n                  $(\'.btn-special\').append(res.synlogin);\n                  location.href = res.redirect_url;\n                  break;\n                //失败次数超过三次\n                case 3:\n                  layer.msg(res.msg, {\n                    offset: \'100px\'\n                  });\n                  $(\'body\').trigger(\'verifyImg.show\').trigger(\'verifyImg.click\');\n              }\n            }\n          });\n        });\n      });\n    &lt;/script&gt;\n  &lt;/body&gt;\n&lt;/html&gt;' : 输入的电话为空


    </pre>
    </div>
    </td>
</tr>

<tr id='ft3_4' class='none'>
    <td class='failCase'><div class='testcase'>test_user_login_4_输入的充值金额为1000000_231</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft3_4' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft3_4'>失败</button>
    <div id='div_ft3_4' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft3_4' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft3_4'>失败</button>
    <div id='div_ft3_4' class="collapse in" align="left">
    <pre>
    
ft3_4: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_03_recharge.py", line 51, in test_user_login
    raise err
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_03_recharge.py", line 45, in test_user_login
    self.assertIn(str(one_case["expected"]), register.text, msg=one_case["title"])
AssertionError: '20116' not found in '&lt;!DOCTYPE html&gt;\r\n&lt;html lang="zh-CN"&gt;\r\n&lt;head&gt;\r\n  &lt;title&gt;前程贷官网 - 欢迎登录&lt;/title&gt;\r\n  &lt;meta charset="utf-8"&gt;\r\n      &lt;meta name="keywords" content="前程贷 前程贷官方网站 社群金融 社群P2P 社群理财 蜂群投资 蜂群理财 网贷理财 网络理财" /&gt;\r\n    &lt;meta name="description" content="社群P2P信息中介平台，P2P领域的创新平台；采用社群金融理财模式，将投资理财用户交付给具备风险识别能力和理财能力的蜂群群主打理，融汇成千上万个蜂群共同监管P2P投资风险。"&gt;  &lt;meta name="renderer" content="webkit"&gt;\r\n  &lt;meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"&gt;\r\n  &lt;meta name="baidu-site-verification" content="ZZA75oMos5" /&gt;\r\n  &lt;link rel="stylesheet" href="/Public/frontend/styles/vendor.css"&gt;\r\n  &lt;script type=\'text/javascript\' src=\'/Public/frontend/scripts/lib/jquery.min.js\'&gt;&lt;/script&gt;\r\n  \r\n  \r\n  &lt;script&gt;\r\n    var _hmt = _hmt || [];\r\n    (function() {\r\n      var hm = document.createElement("script");\r\n      hm.src = "//hm.baidu.com/hm.js?19dd11b0519f0ce499da125c4156e320";\r\n      var s = document.getElementsByTagName("script")[0];\r\n      s.parentNode.insertBefore(hm, s);\r\n    })();\r\n  &lt;/script&gt;\r\n&lt;/head&gt;\n  &lt;body&gt;\n    &lt;div class="login-head"&gt;\n      &lt;div class="login-center"&gt;\n        &lt;div class="login-head-logo clearfix"&gt;\n          &lt;!--&lt;a href="/index/index.html" title="前程贷" class="logo left"&gt;&lt;/a&gt;--&gt;\n          &lt;span class="left"&gt;&lt;a href="/Index/index.html" title="前程贷"&gt;&lt;img src="/Public/frontend/images/logo.png" alt="前程贷" height="52px" width="244px"&gt;&lt;/a&gt;&lt;/span&gt;\n          &lt;div&gt;登录&lt;/div&gt;\n        &lt;/div&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n    &lt;div class="login-center login-body"&gt;&lt;a href="javascript:;" style="background: url(\'/Public/frontend/images/login-banner.png\') no-repeat;" class="login-banner"&gt;&lt;/a&gt;\n      &lt;div class="login-form"&gt;\n        &lt;h1&gt;登录前程贷&lt;/h1&gt;\n        &lt;form name="login-form" action="/Frontend/Index/login" method="post"&gt;\n          \n          &lt;div class="form-group"&gt;\n            &lt;input type="text" name="phone" placeholder="手机号" datatype="m" nullmsg="请输入手机号" errormsg="请输入正确的手机号" class="form-control username" value=""&gt;\n          &lt;/div&gt;\n          &lt;div class="form-group"&gt;\n            &lt;input type="password" name="password" placeholder="密码" datatype="*" nullmsg="请输入密码" class="form-control"&gt;\n          &lt;/div&gt;\n          &lt;div style="display:none" class="form-group clearfix verify-form-group"&gt;\n            &lt;input name="vcode" datatype="*4-4" placeholder="图片验证码" nullmsg="请输入验证码" errormsg="请填写4位验证码" class="left verify-input form-control"&gt;&lt;img width="130px" height="43px" src="/Frontend/Index/member_vcode?r=123" class="verify-img"&gt;\n          &lt;/div&gt;\n          &lt;div class="checkbox"&gt;\n            &lt;label&gt;\n              &lt;input name="remember_me" type="checkbox" class="mr-10 rememberme" value="1" checked&gt;记住手机号\n            &lt;/label&gt;\n            &lt;label class="right"&gt;&lt;a href="/Index/find_pwd.html"&gt;忘记密码?&lt;/a&gt;&lt;/label&gt;\n          &lt;/div&gt;\n          &lt;div class="form-group mt-20"&gt;\n            &lt;input type="hidden" name="notify_url" value="L2Z1dHVyZWxvYW4vbXZjL2FwaS9tZW1iZXIvcmVjaGFyZ2U="&gt;\n            &lt;button type="button" class="btn btn-special"&gt;登录&lt;/button&gt;\n                      &lt;/div&gt;\n          &lt;div class="text-center"&gt;还不是前程贷会员?&lt;a href="/Index/reg.html"&gt;&amp;nbsp;免费注册&lt;/a&gt;&lt;/div&gt;\n        &lt;/form&gt;\n      &lt;/div&gt;\n    &lt;/div&gt;\n    &lt;div class="login-center login-footer text-center"&gt;&lt;span&gt;\n    &lt;a href="#"&gt;安全保障&lt;/a&gt;&lt;/span&gt;&lt;span&gt;\n    &lt;a href="#"&gt;关于我们&lt;/a&gt;&lt;/span&gt;&lt;span&gt;\n    &lt;a href="#"&gt;联系我们&lt;/a&gt;&lt;/span&gt;&lt;span class="no-border"&gt;\n    &lt;a href="/Announce/announce_list.html"&gt;平台公告&lt;/a&gt;&lt;/span&gt;\n\n      &lt;div&gt;版权所有©深圳市前程互联网金融有限公司 粤ICP备88888888号&lt;/div&gt;\n    &lt;/div&gt;\n    &lt;script src="/Public/frontend/scripts/lib/vendor.js"&gt;&lt;/script&gt;\n&lt;script&gt;\n  seajs.config({\n    base: \'/Public/frontend/scripts\',\n    alias: {\n      \'backbone\': \'lib/backbone\',\n      \'underscore\': \'lib/underscore\',\n      \'handlebars\': \'lib/handlebars\'\n    },\n    paths: {\n      \'controllers\': \'app/controllers\',\n      \'plugins\': \'app/plugins\',\n      \'services\': \'app/services\',\n      \'models\': \'app/models\',\n      \'views\': \'app/views\',\n      \'config\': \'app/config\',\n      \'tpl\':\'app/tpl\'\n    }\n  });\n  _.templateSettings = {\n    evaluate: /\\{{(.+?)}\\}/g,\n    interpolate: /\\{{=(.+?)}\\}/g,\n    escape: /\\{{-(.+?)}\\}/g,\n  };\n  seajs.use(\'controllers/common\', function(){\n      });\n  (function (doc, win) {\n    var u = navigator.userAgent;\n    var mobile = !!u.match(/AppleWebKit.*Mobile.*/) || !!u.match(/\\(i[^;]+;( U;)? CPU.+Mac OS X/) || (u.indexOf(\'Android\') &gt; -1);\n    var docEl = doc.documentElement,\n        resizeEvt = \'orientationchange\' in window ? \'orientationchange\' : \'resize\',\n        recalc = function () {\n          var clientWidth = docEl.clientWidth;\n          if (!clientWidth) return;\n          docEl.style.fontSize = 20 * (clientWidth / 320) + \'px\';\n        };\n    if(!mobile) return;\n\n    $(\'html\').css(\'width\',\'80rem\');\n    if (!doc.addEventListener) return;\n    win.addEventListener(resizeEvt, recalc, false);\n    doc.addEventListener(\'DOMContentLoaded\', recalc, false);\n  })(document, window);\n  seajs.use(\'plugins/calculator\');\n\n  $(function(){\n    $(".ios_code_icon").hover(function(){\n      $(".ios_code_box").show();\n    },function(){\n      $(".ios_code_box").hide();\n    })\n    $(".and_code_icon").hover(function(){\n      $(".and_code_box").show();\n    },function(){\n      $(".and_code_box").hide();\n    })\n  });\n\n  $(\'.develop\').click(function(){\n    alert(\'功能开发中,敬请期待!\');\n  });\n&lt;/script&gt;\n\n    &lt;script&gt;\n      $(function() {\n        seajs.use([\'lib/layer/layer\']);\n        seajs.use([\'config/config\',\'lib/validform\'], function (config) {\n          $(\'form\').Validform({\n            btnSubmit: \'.btn-special\',\n            dragonfly: true,\n            ignoreHidden: true,\n            ajaxPost: true,\n            tiptype: config.VALIDFORM_TIPTYPE,\n            callback: function (res) {\n              switch (res.state) {\n                //登录失败\n                case 0:\n                  layer.msg(res.msg, {\n                    offset: \'100px\'\n                  });\n                  ($(\'.verify-img\').is(\':visible\') &amp;&amp; $(\'body\').trigger(\'verifyImg.click\'));\n                  break;\n                //登录成功\n                case 1:\n                    console.log(res);\n                  $(\'.btn-special\').append(res.synlogin);\n                  location.href = res.redirect_url;\n                  break;\n                //失败次数超过三次\n                case 3:\n                  layer.msg(res.msg, {\n                    offset: \'100px\'\n                  });\n                  $(\'body\').trigger(\'verifyImg.show\').trigger(\'verifyImg.click\');\n              }\n            }\n          });\n        });\n      });\n    &lt;/script&gt;\n  &lt;/body&gt;\n&lt;/html&gt;' : 输入的充值金额为1000000.231


    </pre>
    </div>
    </td>
</tr>

<tr class='failClass warning'>
    <td>test_04_add.TestRecharge</td>
    <td class="text-center">4</td>
    <td class="text-center">0</td>
    <td class="text-center">4</td>
    <td class="text-center">0</td>
    <td class="text-center"><a href="javascript:showClassDetail('c4',4)" class="detail" id='c4'>详细</a></td>
</tr>

<tr id='ft4_1' class='none'>
    <td class='failCase'><div class='testcase'>test_user_login_1_正常登录</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft4_1' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft4_1'>失败</button>
    <div id='div_ft4_1' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft4_1' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft4_1'>失败</button>
    <div id='div_ft4_1' class="collapse in" align="left">
    <pre>
    
ft4_1: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_04_add.py", line 51, in test_user_login
    raise err
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_04_add.py", line 45, in test_user_login
    self.assertEqual(one_case["expected"], add.text, msg=one_case["title"])
AssertionError: '{"status":1,"code":"10001","data":null,"msg":"登录成功"}' != '&lt;!DOCTYPE html&gt;\r\n&lt;html lang="zh-CN"&gt;\r\[6711 chars]tml&gt;'
Diff is 6512 characters long. Set self.maxDiff to None to see it. : 正常登录


    </pre>
    </div>
    </td>
</tr>

<tr id='ft4_2' class='none'>
    <td class='failCase'><div class='testcase'>test_user_login_2_加标</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft4_2' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft4_2'>失败</button>
    <div id='div_ft4_2' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft4_2' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft4_2'>失败</button>
    <div id='div_ft4_2' class="collapse in" align="left">
    <pre>
    
ft4_2: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_04_add.py", line 51, in test_user_login
    raise err
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_04_add.py", line 45, in test_user_login
    self.assertEqual(one_case["expected"], add.text, msg=one_case["title"])
AssertionError: '{"status":1,"code":"10001","data":null,"msg":"加标成功"}' != '&lt;!DOCTYPE html&gt;\r\n&lt;html lang="zh-CN"&gt;\r\[6707 chars]tml&gt;'
Diff is 6508 characters long. Set self.maxDiff to None to see it. : 加标


    </pre>
    </div>
    </td>
</tr>

<tr id='ft4_3' class='none'>
    <td class='failCase'><div class='testcase'>test_user_login_3_新增项目中memberId不存在</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft4_3' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft4_3'>失败</button>
    <div id='div_ft4_3' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft4_3' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft4_3'>失败</button>
    <div id='div_ft4_3' class="collapse in" align="left">
    <pre>
    
ft4_3: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_04_add.py", line 51, in test_user_login
    raise err
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_04_add.py", line 45, in test_user_login
    self.assertEqual(one_case["expected"], add.text, msg=one_case["title"])
AssertionError: '{"status":0,"code":"20105","data":null,"msg":"不存在该会员"}' != '&lt;!DOCTYPE html&gt;\r\n&lt;html lang="zh-CN"&gt;\r\[6707 chars]tml&gt;'
Diff is 6510 characters long. Set self.maxDiff to None to see it. : 新增项目中memberId不存在


    </pre>
    </div>
    </td>
</tr>

<tr id='ft4_4' class='none'>
    <td class='failCase'><div class='testcase'>test_user_login_4_新增项目中loanDateType为3</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft4_4' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft4_4'>失败</button>
    <div id='div_ft4_4' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft4_4' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft4_4'>失败</button>
    <div id='div_ft4_4' class="collapse in" align="left">
    <pre>
    
ft4_4: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\libs\ddt.py", line 155, in wrapper
    return func(self, *args, **kwargs)
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_04_add.py", line 51, in test_user_login
    raise err
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_04_add.py", line 45, in test_user_login
    self.assertEqual(one_case["expected"], add.text, msg=one_case["title"])
AssertionError: '{"status":1,"code":"10001","data":null,"msg":"加标成功"}' != '&lt;!DOCTYPE html&gt;\r\n&lt;html lang="zh-CN"&gt;\r\[6707 chars]tml&gt;'
Diff is 6508 characters long. Set self.maxDiff to None to see it. : 新增项目中loanDateType为3


    </pre>
    </div>
    </td>
</tr>

<tr class='errorClass warning'>
    <td>unittest.suite._ErrorHolder</td>
    <td class="text-center">1</td>
    <td class="text-center">0</td>
    <td class="text-center">0</td>
    <td class="text-center">1</td>
    <td class="text-center"><a href="javascript:showClassDetail('c5',1)" class="detail" id='c5'>详细</a></td>
</tr>

<tr id='ft5_1' class='none'>
    <td class='errorCase'><div class='testcase'>TestRecharge)</div></td>
    <td colspan='5' align='center'>
    <!--默认收起错误信息 -Findyou
    <button id='btn_ft5_1' type="button"  class="btn btn-danger btn-xs collapsed" data-toggle="collapse" data-target='#div_ft5_1'>错误</button>
    <div id='div_ft5_1' class="collapse">  -->
    <!-- 默认展开错误信息 -Findyou -->
    <button id='btn_ft5_1' type="button"  class="btn btn-danger btn-xs" data-toggle="collapse" data-target='#div_ft5_1'>错误</button>
    <div id='div_ft5_1' class="collapse in" align="left">
    <pre>
    
ft5_1: Traceback (most recent call last):
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\cases\test_05_invest.py", line 26, in setUpClass
    cls.sql = HandleSql()
  File "E:\自动化\ApiTest1-master (1)\ApiTest1-master\scripts\handle_mysql.py", line 12, in __init__
    self.conn = pymysql.connect(host=config_read_file.get_value("sql", "host"),
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\__init__.py", line 94, in Connect
    return Connection(*args, **kwargs)
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 325, in __init__
    self.connect()
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 598, in connect
    self._get_server_information()
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 975, in _get_server_information
    packet = self._read_packet()
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 657, in _read_packet
    packet_header = self._read_bytes(4)
  File "D:\ProgramData\Anaconda3\envs\web_auto\lib\site-packages\pymysql\connections.py", line 706, in _read_bytes
    raise err.OperationalError(
pymysql.err.OperationalError: (2013, 'Lost connection to MySQL server during query')


    </pre>
    </div>
    </td>
</tr>

<tr id='total_row' class="text-center active">
    <td>总计</td>
    <td>17</td>
    <td>0</td>
    <td>13</td>
    <td>4</td>
    <td>通过率：0.00%</td>
</tr>
</table>

<div id='ending'>&nbsp;</div>
    <div style=" position:fixed;right:50px; bottom:30px; width:20px; height:20px;cursor:pointer">
    <a href="#"><span class="glyphicon glyphicon-eject" style = "font-size:30px;" aria-hidden="true">
    </span></a></div>
    
</body>
</html>
